#!/usr/bin/env python3

import os
import subprocess
import sys

import common

parser = self.get_argparse(argparse_args={
    'description':'Connect to gdbserver running on the guest.'
})
parser.add_argument(
    'executable',
    help='Path to the executable to be debugged relative to the Buildroot build directory.'
)
parser.add_argument(
    'break_at', default='main', nargs='?'
)
args = self.setup(parser)
sys.exit(subprocess.Popen([
  self.get_toolchain_tool('gdb'),
  '-q',
  '-ex', 'set sysroot {}'.format(kwargs['buildroot_staging_dir']),
  '-ex', 'target remote localhost:{}'.format(kwargs['qemu_hostfwd_generic_port']),
  '-ex', 'tbreak {}'.format(kwargs['break_at']),
  '-ex', 'continue',
  os.path.join(kwargs['buildroot_build_build_dir'], self.resolve_userland(kwargs['executable'])),
]).wait())
